"""
测试用例：取消订单
作者：武季
"1.在首页搜索""小米"",点击搜索按钮
2.选择小米mix3,加入到购物车,点击购物车按钮
3.点击""去结算""按钮
4.默认地址已经选择,点击下一步按钮
5.支付方式选择""余额支付"",点击确认订单
6.点击""查看订单详情"",点击""取消订单""

"""

import time
from public.action import *
from public.business import *
from public.testData import *
from public.tools import *
from selenium import webdriver
from selenium.webdriver.common import keys
testCase="DBshop004_取消订单流程"



# 充值余额
firefox=webdriver.Firefox
chongzhi(firefox,"客户管理","管理客户")

#调用登录函数

firefox=openBrowser(url)
DBshopLogin(firefox,userName,password)
#在首页的搜索框输入小米
firefox.find_element_by_xpath('//input[@name="keywords"]').send_keys('小米mix3')
#点击搜索按钮
firefox.find_element_by_xpath('//input[@type="submit"]').click()
#点击商品图片弹出新页面
firefox.find_element_by_xpath('//a[@href="/dbshop/goods/8/2"]').click()
#调用函数切换页面
switchWindow(firefox,2)
#在新页面中点击加入购物车按钮
firefox.find_element_by_id('add_cart_submit').click()
#点击去购物车结算按钮
firefox.find_element_by_link_text('去购物车结算').click()
# 3.点击"去结算"按钮
firefox.find_element_by_link_text('去结算').click()
# 4.默认地址已经被选择,点击下一步按钮
firefox.find_element_by_xpath('//input[@value="下一步"]').click()
# 5.支付方式选择"线下支付",点击确认订单
firefox.find_element_by_xpath('//input[@value="yezf"]').click()
firefox.find_element_by_xpath('//input[@value="确认订单"]').click()
#使用变量orderNO存储订单编号
orderID=firefox.find_element_by_xpath('(//font[@color="color:#ED145B"])[2]').text
rootPath=get_pro_rootpath()
writeFile(rootPath+'\public\order1.txt',orderID) # 将订单编号写入到文件中
print("这一步")
# 查看订单详情
firefox.find_element_by_xpath("//input [@class='btn'][2]").click()
# 输入查询订单
firefox.find_element_by_xpath("//input[@placeholder='输入订单号']").send_keys(orderID)
# 点击搜索
firefox.find_element_by_xpath("//button[contains(text(),'搜索')]").click()
time.sleep(2)
# 取消订单
firefox.find_element_by_xpath("(//button [@class='btn btn-small'])[2]").click()
# 在弹窗中确认
time.sleep(2)
firefox.switch_to_alert().accept()


time.sleep(6)
# 检查点，暂无此订单，断言】

# 输入查询订单
firefox.find_element_by_xpath("//input[@placeholder='输入订单号']").send_keys(orderID)
# 点击搜索
firefox.find_element_by_xpath("//button[contains(text(),'搜索')]").click()
time.sleep(3)

try:
   if firefox.find_element_by_xpath("(//div [@class='box-bd'])[2]").text =="暂时无订单！" :
        writeLog("%s 测试通过" % testCase)


except:
    writeLog("%s 测试失败" % testCase)
    getPhoto(firefox)
firefox.quit()

#












